<template>
    <div class="photoinfo-container">
        <h3>{{photoinfo.title}}</h3>
        <p class="subtitle">
            <span>发表时间：{{photoinfo.add_time|dataFormat}}</span>
            <span>点击： {{photoinfo.click}}次</span>
        </p>

        <hr>

        <!-- 略缩图区域 -->
        <div class="thumb">
            <img class="preview-img" v-for="(item, index) in list" :src="item.src" height="100" @click="$preview.open(index, list)" :key="item.src"> 
        </div>
        
        <!-- 图片内容区 -->
        <div class="content" v-html="photoinfo.content">

        </div>

        <!-- 放置一个现成的评论子组件 -->
        <cmt-box :cmsid="id"></cmt-box>
    </div>
</template>

<script>
// 导入评论子组件
import comment from '../subcomponents/comment'
export default {
    data() {
        return {
          id:this.$route.params.id,  //从路由中获取到的图片的id
          photoinfo:{} ,   //图片详情
          list:[]  //缩略图的数组
        }
    },
    created(){
        this.getPhotoInfo()
        this.getThumbs()
    },
    methods: {
        getPhotoInfo(){
            //获取图片的详情
            this.$http.get('api/getimageInfo/'+this.id).then(res=>{
                if(res.body.status==0){
                    // console.log(res.body.message)
                    this.photoinfo=res.body.message[0]
                }
            })
        },
        getThumbs(){
            //获取缩略图
            this.$http.get('api/getthumimages/'+this.id).then(res=>{
                if(res.body.status==0){
                    //循环每个图片数据，补全图片的宽和高
                    res.body.message.forEach(element => {
                        element.w=600;
                        element.h=400;
                    });
                    //把完整的数据保存到 list 中
                    this.list=res.body.message;
                }
            })
        }
    },
    components:{ //注册评论子组件
        'cmt-box':comment
    }
}
</script>


<style lang="scss" scoped>
.photoinfo-container{
    padding: 3px;
    h3{
        color: #26A2ff;
        font-size: 15px;
        text-align: center;
    }
    .subtitle{
        display: flex;
        justify-content: space-between;
    }
    .content{
        font-size: 13px;
        line-height: 30px;
    }
}
.thumb{
    img{
        margin: 10px;
        box-shadow: 0 0 8px 0 #999;
    }
}
</style>
